package com.novel.utils;

import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.springframework.stereotype.Component;

import java.util.Date;
import java.util.Random;

/**
 * 各种订单号创建工具类
 */
public class OrderNoUtils {

    /**
     * 创建订单号的方法
     */
    public static String generate() {
        //格式化当前日期，格式化到毫秒
        String timeZone = DateFormatUtils.format(new Date(), FormatDateZone.MillionSeconds);
        //添加随机数字，减少重单概率
        Random random = new Random();
        int n = 100000000 + random.nextInt(900000000);
        System.out.println(timeZone);
        System.out.println(n);
        //拼接字符串，最后用随机数字补齐以减少重复概率
        return StringUtils.rightPad("ODR" + timeZone, 24, n + "");
    }

}